home *** CD-ROM | disk | FTP | other *** search
/ CD ROM Paradise Collection 4 / CD ROM Paradise Collection 4 1995 Nov.iso / program / swags_z.zip / STRINGS.SWG / 0045_Trim LEFT side of STRING.pas < prev    next >
Pascal/Delphi Source File  |  1993-09-26  |  1KB  |  39 lines

  1. {*****************************************************************************
  2.  * Function ...... LTrim()
  3.  * Purpose ....... To trim a character off the left side of a string
  4.  * Parameters .... s       String to trim
  5.  *                 c       Character to trim from <s>
  6.  * Returns ....... <s> with all characters <c> removed from the left side
  7.  * Notes ......... None
  8.  * Author ........ Martin Richardson
  9.  * Date .......... October 2, 1992
  10.  *****************************************************************************}
  11. FUNCTION LTrim( s: STRING; c: CHAR ): STRING; Assembler;
  12. ASM
  13.       PUSH   DS
  14.       LDS    SI, s
  15.       XOR    AX, AX
  16.       LODSB
  17.       XCHG   AX, CX
  18.       LES    DI, @Result
  19.       INC    DI
  20.       JCXZ   @@2
  21.  
  22.       MOV    BL, c
  23.       CLD
  24. @@1:  LODSB
  25.       CMP    AL, BL
  26.       LOOPE  @@1
  27.       DEC    SI
  28.       INC    CX
  29.       REP    MOVSB
  30.  
  31. @@2:  XCHG   AX, DI
  32.       MOV    DI, WORD PTR @Result
  33.       SUB    AX, DI
  34.       DEC    AX
  35.       STOSB
  36.       POP    DS
  37. END;
  38.  
  39.